package cn.tedu;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/*本类用于测试List接口*/
public class TestList {
    public static void main(String[] args) {
        List<Object> list = new ArrayList<>();

        list.add("大力娃");
        list.add("千顺娃");
        list.add("头铁娃");
        list.add("喷火娃");
        list.add("喷水娃");
        list.add("隐身娃");
        list.add("小紫娃");
      System.out.println(list);
       // list.clear();
       // System.out.println(list);
        System.out.println(list.contains("喷火娃"));
        System.out.println(list.equals("喷水娃"));
        System.out.println(list.isEmpty());
        System.out.println(list.remove("隐身娃"));
        System.out.println(list.size());
        System.out.println(Arrays.toString(list.toArray()));

        /*List集合是有序的,所以可以根据索引来操作集合中的元素
        * 可以存放重复的数据*/
        list.add("小蝴蝶");
        list.add(1,"蛇精");
        list.add(1,"小蝴蝶");
        System.out.println(list);

        System.out.println(list.indexOf("小蝴蝶"));
        System.out.println(list.lastIndexOf("小蝴蝶"));

        System.out.println(list);
        list.remove(5);//根据索引删除元素
        System.out.println(list);

        System.out.println(list.get(3));//根据下标获取元素

        System.out.println(list.set(7,"蝎子精"));//修改指定下标的元素为蝎子精
        System.out.println(list);

        //测试集合间的操作
        List<String>list2=new ArrayList<>();//创建第2个集合
        list2.add("1");
        list2.add("2");
        list2.add("3");
        list2.add("4");
        System.out.println(list2);//查看集合中的元素
        //将集合2中的所有元素添加到集合1中
       list.addAll(list2);
        System.out.println(list);//默认将2的元素追加到1集合末尾
        list.addAll(1,list2);//指定下标,将集合2的所有元素添加到1集合中
        System.out.println(list);








    }
}
